In a signaling system 7 (SS7) network, signal transfer point (STP) nodes are employed to route SS7 signaling messages through the network. Conventional STP operation involves the routing of SS7 messages based on a destination point code (DPC) value contained in a message transfer part (MTP) routing label in the SS7 messages. Such routing is commonly referred to as MTP routing. One type of SS7 message that is subject to MTP routing is an ISDN user part (ISUP) message. FIG. 1 illustrates an example of an ISUP message. In FIG. 1, ISUP message 100 includes an origination point code (OPC) 102, a DPC 104, and a signaling indicator 106, as well as a number of other well defined parameters. ISUP messages are usually routed based on DPC 104. Another type of SS7 message is a signaling connection control part (SCCP) message. SCCP messages may include a field referred to as a global title address that must be translated into a DPC value before MTP routing can be performed. Thus, like ISUP messages, SCCP messages are routed based on DPC values after GTT is performed.
Signaling links connected to an STP are organized into groups of up to 16. Each group is known as a linkset. All signaling links in a linkset terminate at the same adjacent node. In a combined linkset, all signaling links in the combined linkset terminate at the same mated pair of adjacent nodes. STP nodes are typically provisioned to distribute message transmission across all of the links in a linkset for load sharing purposes. For the same linkset, SLS is used inherently in the protocol to distribute the load among the links in a linkset. Typically, different linksets (routes) are used to get to the same DPC for diversity. The route chosen is typically provisioned by relative cost.
In addition to signaling links and linksets, signaling routes are also defined at STPs and other nodes, such as signaling gateways. A signaling route may include one or more signaling linksets. An STP may maintain a cost value associated with each route, and route availability is affected by received network management information. When multiple routes to the same destination exist, the STP may select the lowest cost route to the destination. Thus, all messages received at an STP that are addressed to a particular DPC will be routed to the appropriate destination via the first available, lowest cost route. Such a routing mechanism ensures that a message will be routed to the appropriate DPC via the lowest cost route.
An SS7 point code typically includes three address components: a network identifier component, a network cluster component, and a cluster member component (ITU-N not). As discussed in GR-82-CORE Signal Transfer Point (STP) Generic Requirements, Issue 5, Telecordia Technologies, December 2001, the disclosure of which is incorporated herein by reference in its entirety, when determining a route over which a message should be sent, a routing node may use the full DPC specified in the message, examining the network ID, network cluster, and cluster member components, or it may use only the network ID and network cluster portions of the DPC to determine the proper outgoing route. In the full DPC case, a routing node consults a member route set. This type of routing is referred to as full point code or member routing. In the case where only the network and cluster portions are used, the routing node consults a cluster route set. This type of routing is referred to as cluster routing.
Cluster routing and cluster management are procedures that use partial point code information (i.e., the network ID and network cluster fields of the DPC present in each SS7 message) to route messages and perform network management functions. These procedures also include determining how to respond to signaling route management messages that refer to clusters. As such, cluster routing involves the implementation of one or more routing rules that allow the cluster member component of the point code address to be wildcarded (i.e., utilize a wildcard operator that represents any valid cluster member value), as indicated below in Table 1.
TABLE 1Conventional Routing Rule ExamplesNetwork IDNetwork ClusterCluster MemberLinkset81*LS16**LS310212LS5As illustrated in the first entry in Table 1, a received signaling message with a DPC that includes a network ID value of 8 and a network cluster value of 1 will be routed over linkset LS1. The cluster member field is a wildcard. Thus, the cluster member value is not used in routing a received signaling message with a DPC having a network ID of 8 and a network cluster value of 1.
In 1994, the assignee of the present invention developed a network routing solution that extended the cluster routing concept. This network routing solution defined two types of partial point codes, network only point codes and network/cluster partial point codes. With this solution, a wildcard operator (e.g., the number 255) could be specified for the cluster member component or both the cluster member and network cluster components of a routing rule. Consequently, all messages addressed to a particular network ID could be routed using a single routing rule, and/or all messages addressed to a particular network ID and network cluster could be routed using a single routing rule. The second entry in Table 1 illustrates this type of conventional routing. In the second entry, the network cluster and cluster member fields are wildcarded. The network ID field is the only field used to route messages. The assignee of the present invention developed a second network-only routing solution in 2000. However, even with this solution, message arriving for a network not provisioned in the routing table would be discarded.
The third sample routing rule entry in Table 1 illustrates a full point code routing rule that does not include a wildcard operator. Thus, only messages addressed specifically to member 12 of cluster 2 of network 10 will be routed over linkset LS5.
While cluster and network routing have proven to be useful in SS7 networks, one problem with these conventional routing schemes is that messages will be discarded if a matching entry is not present in a network routing table. Referring again to the routing rule examples in Table 1, if a signaling message having a DPC of 2-2-2 is received by a routing node that has implemented these routing rules, the message would be discarded because there is no routing rule defined for a message with such a destination address.
An exemplary network diagram illustrating such a message routing scenario is presented in FIG. 2. In FIG. 2, a signaling network 150 includes end office signaling facilities 152, 154, 156 and 158, edge router STP 160 and central STP 162. In this example, it is assumed that SSP 156 has a point code of 2-2-2. Edge router STP 160 may have limited processing capacity and thus its routing tables may not have entries for all nodes in the network. In this example, it is assumed that edge router STP 160 does not have a specific routing table entry for SSP 156. Accordingly, when edge router STP 160 receives a message destined for SSP 156, the message will be discarded. When the MSU in FIG. 2 is discarded due to lack of a routing table entry, an error message may be returned to the message originator, but the original message is not routed to its destination, because a route to the destination 2-2-2 has not been defined in the routing table of edge router STP 160.
One reason for the routing problem illustrated in FIG. 2 is that telecommunications industry standards documents mandate that SS7 messages be discarded if no routing table entry exists that matches the DPCs in the messages. For example, according to GR-310-CORE, CSS Operations System STP Interface Specification, Issue 2, Telecordia Technologies, December 2002 an MTP routing function should discard a received signaling message when the MSU's DPC does not match the routing node's self-identity (i.e., an STP's unique signaling point code or any of its capability codes) and does not have a route specified for it in a routing rule set or table. Because signal transfer points have conventionally followed the industry standards rules as specified in GR-310-CORE, if a signal transfer point receives a message that is not addressed to it and for which it does not have a specific route, the message is discarded. This result is undesirable, since some limited capacity STPs, such as edge router STPs, may not have routing table entries for every point code in the network. As a result, legitimate message traffic may be discarded. Accordingly, there exists a need for improved methods and systems for routing signaling messages at signal transfer points.